using Finance.Api.Read.Dtos;
using Finance.Domain;
using Finance.ErrorCode;
using MediatR;

namespace Finance.Api.Read.Applications.Commands.台账管理
{
    public class ProductBatchQueryCommand : IRequest<ApiResult<ApiPaging<List<ProductBatchDto>>>>
    {
        /// <summary>
        /// 页码
        /// </summary>
        public int index { get; set; }

        /// <summary>
        /// 每页大小
        /// </summary>
        public int size { get; set; }

        /// <summary>
        /// 货品名称
        /// </summary>
        public string? ProductName { get; set; }

        /// <summary>
        /// 货品类型
        /// </summary>
        public string? ProductType { get; set; }

        /// <summary>
        /// 批次号
        /// </summary>
        public string? BatchNum { get; set; }

        /// <summary>
        /// 库名
        /// </summary>
        public string? Location { get; set; }

        /// <summary>
        /// 生产日期开始
        /// </summary>
        public DateTime? ProductionDateStart { get; set; }

        /// <summary>
        /// 生产日期结束
        /// </summary>
        public DateTime? ProductionDateEnd { get; set; }

        /// <summary>
        /// 到期日期开始
        /// </summary>
        public DateTime? OverProductDateStart { get; set; }

        /// <summary>
        /// 到期日期结束
        /// </summary>
        public DateTime? OverProductDateEnd { get; set; }
    }
} 